package com.soyotec.algorithm.solution.value;

import com.soyotec.algorithm.util.RandValueUtil;
import com.soyotec.algorithm.value.DoubleValue;
import com.soyotec.algorithm.value.Limit;

public class SolutionValueDouble extends SolutionValue<DoubleValue> {

    public SolutionValueDouble(){
        super();
    }

    public SolutionValueDouble(Limit<DoubleValue> limit){
        super(limit);
    }

    public SolutionValueDouble(DoubleValue value){
        super(value);
    }

    public SolutionValueDouble(Limit<DoubleValue> limit,DoubleValue value){
        super(limit,value);
    }


    @Override
    protected void initValue() {
        DoubleValue dv = new DoubleValue();
        Limit<DoubleValue> doubleValueLimit = this.getLimit();
        if (doubleValueLimit != null) {
            dv.setValue(RandValueUtil.initValueDouble(doubleValueLimit));
            setValue(dv);
        } else {
            setValue(dv);
        }


    }


}
